a650861b1b244fd99dfaf55bcff942508043717e,src/main/java/weka/filters/pyscript/PyScriptFilter.java,PyScriptFilter,determineOutputFormat,#Instances#,146
Before Change
// ok now filter
// m_session.executeScript("args['X'] = args['X_train'][0:1]\nargs['y'] = args['y_train'][0:1]\n", getDebug());
m_session.executeScript("import numpy as np; args['X'] = np.ones((0,0));\n", getDebug());
driver = "arff = cls.process(args, model)";
executeScript(driver, "An error happened while executing the process() function:");
After Change
if(data.classIndex() >= 0) {
m_session.executeScript("args['y_train'] = Y\n", getDebug());
} else {
m_session.executeScript(
String.format("args['y_train'] = np.zeros((%d,0))", data.numInstances()), getDebug());
}
// build the classifier
driver = "model = cls.train(args)";
executeScript(driver, "An error happened while executing the train() function:");
// save model parameters
m_pickledModel = m_session.getVariableValueFromPythonAsPickledObject("model", getDebug());
// ok now filter
// m_session.executeScript("args['X'] = args['X_train'][0:1]\nargs['y'] = args['y_train'][0:1]\n", getDebug());
m_session.executeScript("import numpy as np; args['X'] = args['y'] = np.zeros((0,0));\n", getDebug());
driver = "new_args = cls.process(args, model)";
executeScript(driver, "An error happened while executing the process() function:");